/*
 * 文 件 名:  VelocityTest.java
 * 版    权:   深圳埃思欧纳信息咨询有限公司版权所有. YYYY-YYYY,  All rights reserved
 * 描    述:   <描述>
 * 修 改 人:  honny.huang
 * 修改时间: 2011-2-17
 * 跟踪单号:  <跟踪单号>
 * 修改单号:  <修改单号>
 * 修改内容:  <修改内容>
 */
package com.velocity;

import java.io.StringWriter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;

import com.ue.log.LogManager;

/**
 * <一句话功能简述> <功能详细描述>
 *
 * @author honny.huang
 * @version [版本号, 2011-2-17]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */

public class VelocityEmailTest 
{
	 @SuppressWarnings("unchecked")
	public static void main(String[] args)
     {
		//初始化并取得Velocity引擎 
		 VelocityEngine ve = new VelocityEngine(); 
		//模板文件所在的路径
		String path = VelocityMailConstants2.MAIL_PATH;		
		System.out.println(path);
    	//设置参数
		ve.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path);
        //处理中文问题
		ve.setProperty(Velocity.INPUT_ENCODING,"UTF-8");
		ve.setProperty(Velocity.OUTPUT_ENCODING,"UTF-8");
		try 
		{
			 ve.init(); 
			 //取得velocity的模版 
			 Template t = ve.getTemplate("friend_request_com2.vm"); 
			 
			 //取得velocity的上下文context 
			 VelocityContext context = new VelocityContext(); 
			 
			 //把数据填入上下文 
			 context.put("name", "黄立志"); 
			 context.put("date", (new Date()).toString()); 
			 //为后面的展示，提前输入List数值 
			 List temp = new ArrayList(); 
			 temp.add("1"); 
			 temp.add("2"); 
			 context.put("list", temp); 
			 //输出流 
			 StringWriter writer = new StringWriter(); 
			 //转换输出 
			 t.merge(context, writer); 
			 String templateContent = writer.toString();
			 System.out.println("==================="); 
			 System.out.println(templateContent); 
			 System.out.println("====================="); 
		} 
		catch (Exception e) 
		{
			LogManager.debug("Vecocity测试失败" + e.getMessage());
		}
     }
}
